From: Daniel Golle Date: Mon, 30 Aug 2021 23:35:53 +0000 (+0100) Subject: utils: don't ignore open() return value X-Git-Url: http://git.openwrt.org/%22http:/oss.oetiker.ch/rrdtool//%22/%22http:/oss.oetiker.ch/rrdtool/%22?a=commitdiff_plain;h=86f82f3de1da07ef86a33a8e9302c98dafbfa6ec;p=project%2Fprocd.git utils: don't ignore open() return value In case active console cannot be opened, return NULL early instead of trying to read from errornous file descriptor. Coverity CID: 1490087 Argument cannot be negative Signed-off-by: Daniel Golle --- diff --git a/utils/utils.c b/utils/utils.c index 2cfcc8e..f0c4a90 100644 --- a/utils/utils.c +++ b/utils/utils.c @@ -139,7 +139,12 @@ char *get_active_console(char *out, int len) { char line[CMDLINE_SIZE + 1]; int fd = open("/sys/class/tty/console/active", O_RDONLY); - ssize_t r = read(fd, line, sizeof(line) - 1); + ssize_t r; + + if (fd < 0) + return NULL; + + r = read(fd, line, sizeof(line) - 1); line[CMDLINE_SIZE] = '\0'; close(fd);